package com.peng.leetcode.swordoffer;

import java.util.List;

/**
 * Sword21Exchange
 * 剑指 Offer 21. 调整数组顺序使奇数位于偶数前面
 * https://leetcode.cn/problems/diao-zheng-shu-zu-shun-xu-shi-qi-shu-wei-yu-ou-shu-qian-mian-lcof/
 *
 * @author: lupeng6
 * @create: 2023/3/10 15:42
 */
public class Sword21Exchange {
//    public int[] exchange(int[] nums) {
//        if (nums == null || nums.length == 0) {
//            return new int[0];
//        }
//        int l = 0;
//        int r = nums.length - 1;
//        while (l < r) {
//            while (l < r && nums[l] % 2 == 1) {
//                l++;
//            }
//            while (l < r && nums[r] % 2 == 0) {
//                r--;
//            }
//            if (l < r) {
//                int temp = nums[l];
//                nums[l] = nums[r];
//                nums[r] = temp;
//                l++;
//                r--;
//            }
//        }
//        return nums;
//    }


    public int[] exchange(int[] nums) {
        int[] ans = new int[nums.length];
        int l = 0;
        int r = nums.length - 1;
        for (int i = 0; i < nums.length; i++) {
            if (nums[i] % 2 == 1) {
                ans[l] = nums[i];
                l++;
            } else {
                ans[r] = nums[i];
                r--;
            }
        }
        return ans;
    }
}
